<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.12"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>HexFiend: HFTextRepresenter Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">HexFiend
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.12 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Instance Methods</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="interface_h_f_text_representer-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">HFTextRepresenter Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>An <a class="el" href="interface_h_f_representer.html" title="The principal view class of Hex Fiend&#39;s MVC architecture. ">HFRepresenter</a> that draws text (e.g. the hex or ASCII view).  
 <a href="interface_h_f_text_representer.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for HFTextRepresenter:</div>
<div class="dyncontent">
 <div class="center">
  <img src="interface_h_f_text_representer.png" usemap="#HFTextRepresenter_map" alt=""/>
  <map id="HFTextRepresenter_map" name="HFTextRepresenter_map">
<area href="interface_h_f_representer.html" title="The principal view class of Hex Fiend&#39;s MVC architecture. " alt="HFRepresenter" shape="rect" coords="108,56,315,80"/>
<area href="interface_h_f_hex_text_representer.html" title="HFHexTextRepresenter is an HFRepresenter responsible for showing data in hexadecimal form..." alt="HFHexTextRepresenter" shape="rect" coords="0,168,207,192"/>
<area href="interface_h_f_string_encoding_text_representer.html" title="An HFRepresenter responsible for showing data interpreted via an NSStringEncoding. " alt="HFStringEncodingTextRepresenter" shape="rect" coords="217,168,424,192"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Instance Methods</h2></td></tr>
<tr class="memitem:a3f12926813c569493d899818bda41842"><td class="memItemLeft" align="right" valign="top">(NSRect)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_text_representer.html#a3f12926813c569493d899818bda41842">furthestRectOnEdge:forByteRange:</a></td></tr>
<tr class="separator:a3f12926813c569493d899818bda41842"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3d4e16d294fb3757583c25272062991"><td class="memItemLeft" align="right" valign="top">(NSPoint)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_text_representer.html#ac3d4e16d294fb3757583c25272062991">locationOfCharacterAtByteIndex:</a></td></tr>
<tr class="separator:ac3d4e16d294fb3757583c25272062991"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_interface_h_f_representer"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_interface_h_f_representer')"><img src="closed.png" alt="-"/>&#160;Instance Methods inherited from <a class="el" href="interface_h_f_representer.html">HFRepresenter</a></td></tr>
<tr class="memitem:a5393437fbe020d3079a979a7383eb67b inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(NSUInteger)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#a5393437fbe020d3079a979a7383eb67b">byteGranularity</a></td></tr>
<tr class="separator:a5393437fbe020d3079a979a7383eb67b inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9738e9e916b36b17e37b178234ee79fe inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(id)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#a9738e9e916b36b17e37b178234ee79fe">view</a></td></tr>
<tr class="separator:a9738e9e916b36b17e37b178234ee79fe inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04bfc131d81d7123c4fcdcc5327f94dd inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(BOOL)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#a04bfc131d81d7123c4fcdcc5327f94dd">isViewLoaded</a></td></tr>
<tr class="separator:a04bfc131d81d7123c4fcdcc5327f94dd inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39e5e22b482218a8c38c384502ee1709 inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(NSView *)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#a39e5e22b482218a8c38c384502ee1709">NS_RETURNS_RETAINED</a></td></tr>
<tr class="separator:a39e5e22b482218a8c38c384502ee1709 inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a786eb3e2db08cd99bd04aa737bf6073d inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(void)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#a786eb3e2db08cd99bd04aa737bf6073d">initializeView</a></td></tr>
<tr class="separator:a786eb3e2db08cd99bd04aa737bf6073d inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2c63f016e14f6de4bcb9312ceca4998 inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(<a class="el" href="interface_h_f_controller.html">HFController</a> *)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#ac2c63f016e14f6de4bcb9312ceca4998">controller</a></td></tr>
<tr class="separator:ac2c63f016e14f6de4bcb9312ceca4998 inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23c079ab89921b0b54b3072a1c494107 inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(void)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#a23c079ab89921b0b54b3072a1c494107">controllerDidChange:</a></td></tr>
<tr class="separator:a23c079ab89921b0b54b3072a1c494107 inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a821a42b782b48dd2dda877807f0eff54 inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(NSUInteger)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#a821a42b782b48dd2dda877807f0eff54">bytesPerLine</a></td></tr>
<tr class="separator:a821a42b782b48dd2dda877807f0eff54 inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4f756afd4c3b7c44f710fa7374c582d inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(NSUInteger)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#ae4f756afd4c3b7c44f710fa7374c582d">bytesPerColumn</a></td></tr>
<tr class="separator:ae4f756afd4c3b7c44f710fa7374c582d inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a009d8e81dc63b3484e502e99a5b2874a inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(void)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#a009d8e81dc63b3484e502e99a5b2874a">representerChangedProperties:</a></td></tr>
<tr class="separator:a009d8e81dc63b3484e502e99a5b2874a inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b93407c240a3f821f810d1f33faf0ac inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(NSUInteger)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#a7b93407c240a3f821f810d1f33faf0ac">maximumBytesPerLineForViewWidth:</a></td></tr>
<tr class="separator:a7b93407c240a3f821f810d1f33faf0ac inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf56b3dfdb9c607c6871d2ef9abe5a91 inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(CGFloat)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#acf56b3dfdb9c607c6871d2ef9abe5a91">minimumViewWidthForBytesPerLine:</a></td></tr>
<tr class="separator:acf56b3dfdb9c607c6871d2ef9abe5a91 inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b6f9c8eda1d96dcc31bb850fb9048fd inherit pub_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(double)&#160;</td><td class="memItemRight" valign="bottom">- <a class="el" href="interface_h_f_representer.html#a2b6f9c8eda1d96dcc31bb850fb9048fd">maximumAvailableLinesForViewHeight:</a></td></tr>
<tr class="separator:a2b6f9c8eda1d96dcc31bb850fb9048fd inherit pub_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:a0b4cd25fe610f2cac726eb8556e30686"><td class="memItemLeft" align="right" valign="top">NSArray *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_h_f_text_representer.html#a0b4cd25fe610f2cac726eb8556e30686">rowBackgroundColors</a></td></tr>
<tr class="separator:a0b4cd25fe610f2cac726eb8556e30686"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87a0e97b488cc308ceca0630f8f6e64a"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_h_f_text_representer.html#a87a0e97b488cc308ceca0630f8f6e64a">behavesAsTextField</a></td></tr>
<tr class="separator:a87a0e97b488cc308ceca0630f8f6e64a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header properties_interface_h_f_representer"><td colspan="2" onclick="javascript:toggleInherit('properties_interface_h_f_representer')"><img src="closed.png" alt="-"/>&#160;Properties inherited from <a class="el" href="interface_h_f_representer.html">HFRepresenter</a></td></tr>
<tr class="memitem:a05cf33df8751ca00d2b08ac2cbe62067 inherit properties_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">NSPoint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_h_f_representer.html#a05cf33df8751ca00d2b08ac2cbe62067">layoutPosition</a></td></tr>
<tr class="memdesc:a05cf33df8751ca00d2b08ac2cbe62067 inherit properties_interface_h_f_representer"><td class="mdescLeft">&#160;</td><td class="mdescRight">The layout position for the receiver.  <a href="interface_h_f_representer.html#a05cf33df8751ca00d2b08ac2cbe62067">More...</a><br /></td></tr>
<tr class="separator:a05cf33df8751ca00d2b08ac2cbe62067 inherit properties_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_interface_h_f_representer"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_interface_h_f_representer')"><img src="closed.png" alt="-"/>&#160;Class Methods inherited from <a class="el" href="interface_h_f_representer.html">HFRepresenter</a></td></tr>
<tr class="memitem:a242a7e6f74430c85bcaf9b3fe01e8fbf inherit pub_static_methods_interface_h_f_representer"><td class="memItemLeft" align="right" valign="top">(NSPoint)&#160;</td><td class="memItemRight" valign="bottom">+ <a class="el" href="interface_h_f_representer.html#a242a7e6f74430c85bcaf9b3fe01e8fbf">defaultLayoutPosition</a></td></tr>
<tr class="separator:a242a7e6f74430c85bcaf9b3fe01e8fbf inherit pub_static_methods_interface_h_f_representer"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="interface_h_f_text_representer.html" title="An HFRepresenter that draws text (e.g. the hex or ASCII view). ">HFTextRepresenter</a> is an abstract subclass of <a class="el" href="interface_h_f_representer.html" title="The principal view class of Hex Fiend&#39;s MVC architecture. ">HFRepresenter</a> that is responsible for displaying text. There are two concrete subclass, <a class="el" href="interface_h_f_hex_text_representer.html" title="HFHexTextRepresenter is an HFRepresenter responsible for showing data in hexadecimal form...">HFHexTextRepresenter</a> and <a class="el" href="interface_h_f_string_encoding_text_representer.html" title="An HFRepresenter responsible for showing data interpreted via an NSStringEncoding. ">HFStringEncodingTextRepresenter</a>.</p>
<p>Most of the functionality of <a class="el" href="interface_h_f_text_representer.html" title="An HFRepresenter that draws text (e.g. the hex or ASCII view). ">HFTextRepresenter</a> is private, and there is not yet enough exposed to allow creating new representers based on it. However, there is a small amount of configurability. </p>
</div><h2 class="groupheader">Method Documentation</h2>
<a id="a3f12926813c569493d899818bda41842"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f12926813c569493d899818bda41842">&sect;&nbsp;</a></span>furthestRectOnEdge:forByteRange:()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">- (NSRect) furthestRectOnEdge: </td>
          <td></td>
          <td class="paramtype">(NSRectEdge)&#160;</td>
          <td class="paramname"><em>edge</em></td>
        </tr>
        <tr>
          <td class="paramkey">forByteRange:</td>
          <td></td>
          <td class="paramtype">(<a class="el" href="struct_h_f_range.html">HFRange</a>)&#160;</td>
          <td class="paramname"><em>range</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Given a rect edge, return an NSRect representing the maximum edge in that direction, in the coordinate system of the receiver's view. The dimension in the direction of the edge is 0 (so if edge is NSMaxXEdge, the resulting width is 0). The returned rect is in the coordinate space of the receiver's view. If the byte range is not displayed, returns NSZeroRect.</p>
<p>If range is entirely above the visible region, returns an NSRect whose width and height are 0, and whose origin is -CGFLOAT_MAX (the most negative CGFloat). If range is entirely below the visible region, returns the same except with CGFLOAT_MAX (positive).</p>
<p>This raises an exception if range is empty. </p>

</div>
</div>
<a id="ac3d4e16d294fb3757583c25272062991"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac3d4e16d294fb3757583c25272062991">&sect;&nbsp;</a></span>locationOfCharacterAtByteIndex:()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">- (NSPoint) locationOfCharacterAtByteIndex: </td>
          <td></td>
          <td class="paramtype">(unsigned long long)&#160;</td>
          <td class="paramname"><em>byteIndex</em></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Returns the origin of the character at the given byte index. The returned point is in the coordinate space of the receiver's view. If the character is not displayed because it would be above the displayed range, returns {0, -CGFLOAT_MAX}. If it is not displayed because it is below the displayed range, returns {0, CGFLOAT_MAX}. As a special affordance, you may pass a byte index one greater than the contents length of the controller, and it will return the result as if the byte existed. </p>

</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a id="a0b4cd25fe610f2cac726eb8556e30686"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0b4cd25fe610f2cac726eb8556e30686">&sect;&nbsp;</a></span>rowBackgroundColors</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">- (NSArray*) rowBackgroundColors</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">read</span><span class="mlabel">write</span><span class="mlabel">nonatomic</span><span class="mlabel">copy</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>The per-row background colors. Each row is drawn with the next color in turn, cycling back to the beginning when the array is exhausted. Any empty space is filled with the first color in the array. If the array is empty, then the background is drawn with <code>clearColor</code>. </p>

</div>
</div>
<a id="a87a0e97b488cc308ceca0630f8f6e64a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a87a0e97b488cc308ceca0630f8f6e64a">&sect;&nbsp;</a></span>behavesAsTextField</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">- (BOOL) behavesAsTextField</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">read</span><span class="mlabel">write</span><span class="mlabel">nonatomic</span><span class="mlabel">assign</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Whether the text view behaves like a text field (YES) or a text view (NO). Currently this determines whether it draws a focus ring when it is the first responder. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="_h_f_text_representer_8h_source.html">HFTextRepresenter.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.12
</small></address>
</body>
</html>
